package com.quad.innovators.salesease.service.warehouse;

import com.baomidou.mybatisplus.extension.service.IService;
import com.quad.innovators.salesease.common.result.PageResultBean;
import com.quad.innovators.salesease.model.entity.warehouse.VehicleBringGoods;
import com.quad.innovators.salesease.model.form.warehouse.VehicleBringGoodsForm;
import com.quad.innovators.salesease.model.query.warehouse.VehicleBringGoodsPageQuery;
import com.quad.innovators.salesease.model.vo.warehouse.SaleReturnOrderVO;
import com.quad.innovators.salesease.model.vo.warehouse.VehicleBringGoodsVO;

import jakarta.validation.Valid;

/**
 * @author : shanshan.li
 * @createTime : 2025/4/3 09:38
 * @Version : 1.0 
 */
public interface VehicleBringGoodsService extends IService<VehicleBringGoods> {
    /**
     *  分页查询
     * @param queryParams 分页参数
     * @return 分页结果
     */
    PageResultBean<VehicleBringGoodsVO> listPage(VehicleBringGoodsPageQuery queryParams);

    /**
     * 获取车辆带货数据详情
     * @param code 车辆带货code
     * @return 返回车辆带货信息
     */
    VehicleBringGoodsForm getFormData(String code);

    /**
     * 新增车辆带货信息
     * @param form 车辆带货表单信息
     * @return 返回是否成功
     */
    boolean save(VehicleBringGoodsForm form);

    /**
     * 修改车辆带货信息
     * @param code 车辆带货code
     * @param form 车辆带货表单信息
     * @return 返回是否成功
     */
    boolean update(String code, VehicleBringGoodsForm form);

    /**
     * 校验车辆带货状态
     * @param code 车辆带货code
     * @return 返回是否成功
     */
    boolean examineResult(String code);
}
